<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
</html>
<script>
    //21-04-25-夜 补充 
    
    //社么是设计模式？ 
    /*
             假设有一个空房间，我们要日复一日地往里面放一些东西。最简单的办法当然是把这些东西直接扔进去，但是时间久了就会发现很难从
    这个房子里找到自己想要的东西，要调整某几样东西的位置也不容易。所以在房间里做一些柜子也许是个更好的选择，虽然柜子会增加我们的成本
    但它可以在维护阶段为我们带来好处。使用这些柜子存放东西的规则，或许就是一种模式

      设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。
      使用设计模式是为了重用代码、让代码更容易被他人理解、保证代码可靠性。
      毫无疑问，设计模式于己于他人于系统都是多赢的，设计模式使代码编制真正工程化，设计模式是软件工程的基石，如同大厦的一块块砖石一样。
    */


    //社么是设计原则 
    /*
       单一职责原则（SRP）
    一个对象或方法只做一件事情。如果一个方法承担了过多的职责，那么在需求的变迁过程中，需要改写这个方法的可能性就越大。
    应该把对象或方法划分成较小的粒度

       最少知识原则（LKP）
    一个软件实体应当 尽可能少地与其他实体发生相互作用
    应当尽量减少对象之间的交互。如果两个对象之间不必彼此直接通信，那么这两个对象就不要发生直接的 相互联系，可以转交给第三方进行处理

       开放-封闭原则（OCP）
    软件实体（类、模块、函数）等应该是可以 扩展的，但是不可修改
    当需要改变一个程序的功能或者给这个程序增加新功能的时候，可以使用增加代码的方式，尽量避免改动程序的源代码，防止影响原系统的稳定
    */





</script>